package com.taiji.workOrder.service;

import java.util.List;

import com.taiji.common.core.domain.entity.SysUser;
import com.taiji.workOrder.domain.UserProject;
import com.taiji.workOrder.domain.WorkOrder;

/**
 * 我的工单Service接口
 * 
 * @author taiji
 * @date 2023-03-04
 */
public interface IMyOrderService 
{
    /**
     * 查询我的工单
     * 
     * @param id 我的工单主键
     * @return 我的工单
     */
    public WorkOrder selectMyOrderById(String id);

    public WorkOrder getDetail(String id);

    public List<SysUser> getDealPerson(String id);

    /**
     * 查询我的工单列表
     * 
     * @param workOrder 我的工单
     * @return 我的工单集合
     */
    public List<WorkOrder> selectMyOrderList(WorkOrder workOrder);

    /**
     * 新增我的工单
     * 
     * @param workOrder 我的工单
     * @return 结果
     */
    public int insertMyOrder(WorkOrder workOrder) throws Exception;

    /**
     * 修改我的工单
     * 
     * @param workOrder 我的工单
     * @return 结果
     */
    public int updateMyOrder(WorkOrder workOrder);

    /**
     * 批量删除我的工单
     * 
     * @param ids 需要删除的我的工单主键集合
     * @return 结果
     */
    public int deleteMyOrderByIds(String[] ids);

    /**
     * 删除我的工单信息
     * 
     * @param id 我的工单主键
     * @return 结果
     */
    public int deleteMyOrderById(String id);

    public int revert(WorkOrder workOrder);

    public int finish(String workNumber);

    public int close(String workNumber,String remark);
    public int disallowed(String workNumber,String remark);
    public int accept(String workNumber);

    WorkOrder selectWorkOrderByWorkNumber(String workNumber);

    /**
     * 提交工单
     * @param workNumber 工单编号
     * @return
     */
    int submit(String workNumber);

}
